package com.mcxx.modules.temporary.service;

import com.mcxx.modules.miniSalvation.order.dto.NoticeBoardDTO;
import com.mcxx.modules.miniSalvation.order.entity.NoticeBoardDetailEntity;
import com.mcxx.modules.miniSalvation.order.param.OrderListSearchParam;
import com.yinhai.ta404.core.security.vo.UserAccountVo;

import java.util.List;
import java.util.Map;


public interface TempNoticeBoardService {


    boolean changeDtoToEntity(NoticeBoardDTO noticeBoard, UserAccountVo userAccountVo);


    int saveBatchObject(List<NoticeBoardDetailEntity> noticeBoardDetailList, String userAreaLevel);



    Map<String, List<String>> confirmBatch(List<String> batchNoList, String userAreaLevel);


    Map<String, List<String>> finishBatch(List<NoticeBoardDetailEntity> batchNoList, UserAccountVo userAccountVo,
                                          String batchId, String finishRemark);


    Map<String, List<String>> deleteBatch(List<String> batchNoList, UserAccountVo userAccountVo);


    Boolean deleteRedisKey(String batchId);


    void sendRabbitMQToFinish(List<NoticeBoardDetailEntity> changeData,String batchId, String finishRemark,
                              UserAccountVo userAccountVo);


    Map<String, Object> printNoticeBoardTown(OrderListSearchParam param);
}
